/**
 * jims
 */
package com.jims.master.modules.doctor.entity;

import com.fasterxml.jackson.annotation.JsonFormat;
import com.jims.master.common.persistence.DataEntity;
import com.jims.master.modules.reg.entity.ClinicIndex;
import com.jims.master.modules.sys.entity.OrgDept;
import org.hibernate.validator.constraints.Length;

import java.util.Date;

/**
 * 住院信息Entity
 * @author chentao
 * @version 2017-03-10
 */
public class LiveRequisition extends DataEntity<LiveRequisition> {
	
	private static final long serialVersionUID = 1L;
	private String clinicId;		// 就诊记录ID/住院记录
	private String name;		// 姓名
	private String inputCode;		// 姓名拼音码
	private String sex;		// 性别
	private String age;		// 年龄
	private String nation;		// 名族

	private String marriage;     //婚姻状况
	private String occupation;     //职业
	private String bedNum;     //床号
	private String contactsRelation;     //联系人关系
	private String acceptingMoney;     //预交住院费
	private Date attackdate;     //发病时间
	private String attention;      //注意事项
	private String inFlag;//是否住院标识1住院0未住院

	private String nationality;		// 国籍
	private Date birthdayDate;		// 生日
	private String nativePlace;		// 籍贯
	private String zipCode;		// 邮编
	private String homeplace;		// 出生地
	private String address;		// 住址
	private String identity;		// 身份
	private String idNo;		// 身份证号
	private String phone;		// 电话
	private String contacts;		// 联系人
	private String contactsAddress;		// 联系人地址
	private String contactsPhone;		// 联系人电话
	private String unitInContract;		// 合同单位
	private String chargeType;		// 费别
	private String theIllness; // 入院情况
	private String hospitalizedDept;		// hospitalized_dept 入院科室
	private Double paymentAdvice; // 建议预交金

    private OrgDept inDept;  //入院科室
	private OrgDept inDeptWord;  //入院病区
	private Date hospitalizedDate;		// hospitalized_date 入院时间
	private String hospitalSituation;		// hospital_situation 入院情况
	private String quarantine;		// quarantine  1.严重隔离   2.普通隔离  3.不隔离
	private String diagnosis;		// diagnosis   入院诊断
	private String diagnosisDesc;  //门诊诊断
	private ClinicIndex clinicIndex; //就诊信息
	private ClinicMaster clinicMaster;
    private PatMasterIndex patMasterIndex;
	private Date dischargeDate;
	private String wardAdmissionTo;

	private String clinicNo;


	public Date getDischargeDate() {
		return dischargeDate;
	}

	public void setDischargeDate(Date dischargeDate) {
		this.dischargeDate = dischargeDate;
	}

	public ClinicMaster getClinicMaster() {
		return clinicMaster;
	}

	public void setClinicMaster(ClinicMaster clinicMaster) {
		this.clinicMaster = clinicMaster;
	}

	public LiveRequisition() {
		super();
	}

	public LiveRequisition(String id){
		super(id);
	}

    public OrgDept getInDept() {
        return inDept;
    }

    public void setInDept(OrgDept inDept) {
        this.inDept = inDept;
    }

    @Length(min=1, max=64, message="就诊记录ID/住院记录长度必须介于 1 和 64 之间")
	public String getClinicId() {
		return clinicId;
	}

	public void setClinicId(String clinicId) {
		this.clinicId = clinicId;
	}
	
	@Length(min=1, max=200, message="姓名长度必须介于 1 和 200 之间")
	public String getName() {
		return name;
	}

	public void setName(String name) {
		this.name = name;
	}
	
	@Length(min=0, max=50, message="姓名拼音码长度必须介于 0 和 50 之间")
	public String getInputCode() {
		return inputCode;
	}

	public void setInputCode(String inputCode) {
		this.inputCode = inputCode;
	}
	
	@Length(min=0, max=1, message="性别长度必须介于 0 和 1 之间")
	public String getSex() {
		return sex;
	}

	public void setSex(String sex) {
		this.sex = sex;
	}
	
	@Length(min=0, max=11, message="年龄长度必须介于 0 和 11 之间")
	public String getAge() {
		return age;
	}

	public void setAge(String age) {
		this.age = age;
	}
	
	@Length(min=0, max=1, message="名族长度必须介于 0 和 1 之间")
	public String getNation() {
		return nation;
	}

	public void setNation(String nation) {
		this.nation = nation;
	}
	
	@Length(min=0, max=1, message="国籍长度必须介于 0 和 1 之间")
	public String getNationality() {
		return nationality;
	}

	public void setNationality(String nationality) {
		this.nationality = nationality;
	}
	
	@JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss")
	public Date getBirthdayDate() {
		return birthdayDate;
	}

	public void setBirthdayDate(Date birthdayDate) {
		this.birthdayDate = birthdayDate;
	}
	
	@Length(min=0, max=100, message="籍贯长度必须介于 0 和 100 之间")
	public String getNativePlace() {
		return nativePlace;
	}

	public void setNativePlace(String nativePlace) {
		this.nativePlace = nativePlace;
	}
	
	@Length(min=0, max=100, message="邮编长度必须介于 0 和 100 之间")
	public String getZipCode() {
		return zipCode;
	}

	public void setZipCode(String zipCode) {
		this.zipCode = zipCode;
	}
	
	@Length(min=0, max=200, message="出生地长度必须介于 0 和 200 之间")
	public String getHomeplace() {
		return homeplace;
	}

	public void setHomeplace(String homeplace) {
		this.homeplace = homeplace;
	}
	
	@Length(min=0, max=200, message="住址长度必须介于 0 和 200 之间")
	public String getAddress() {
		return address;
	}

	public void setAddress(String address) {
		this.address = address;
	}
	
	@Length(min=0, max=1, message="身份长度必须介于 0 和 1 之间")
	public String getIdentity() {
		return identity;
	}

	public void setIdentity(String identity) {
		this.identity = identity;
	}
	
	@Length(min=0, max=21, message="身份证号长度必须介于 0 和 21 之间")
	public String getIdNo() {
		return idNo;
	}

	public void setIdNo(String idNo) {
		this.idNo = idNo;
	}
	
	@Length(min=0, max=20, message="电话长度必须介于 0 和 20 之间")
	public String getPhone() {
		return phone;
	}

	public void setPhone(String phone) {
		this.phone = phone;
	}
	
	@Length(min=0, max=200, message="联系人长度必须介于 0 和 200 之间")
	public String getContacts() {
		return contacts;
	}

	public void setContacts(String contacts) {
		this.contacts = contacts;
	}
	
	@Length(min=0, max=200, message="联系人地址长度必须介于 0 和 200 之间")
	public String getContactsAddress() {
		return contactsAddress;
	}

	public void setContactsAddress(String contactsAddress) {
		this.contactsAddress = contactsAddress;
	}
	
	@Length(min=0, max=20, message="联系人电话长度必须介于 0 和 20 之间")
	public String getContactsPhone() {
		return contactsPhone;
	}

	public void setContactsPhone(String contactsPhone) {
		this.contactsPhone = contactsPhone;
	}
	
	@Length(min=0, max=200, message="合同单位长度必须介于 0 和 200 之间")
	public String getUnitInContract() {
		return unitInContract;
	}

	public void setUnitInContract(String unitInContract) {
		this.unitInContract = unitInContract;
	}
	
	@Length(min=0, max=1, message="费别长度必须介于 0 和 1 之间")
	public String getChargeType() {
		return chargeType;
	}

	public void setChargeType(String chargeType) {
		this.chargeType = chargeType;
	}
	
	@Length(min=0, max=64, message="hospitalized_dept长度必须介于 0 和 64 之间")
	public String getHospitalizedDept() {
		return hospitalizedDept;
	}

	public void setHospitalizedDept(String hospitalizedDept) {
		this.hospitalizedDept = hospitalizedDept;
	}
	
	@JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss")
	public Date getHospitalizedDate() {
		return hospitalizedDate;
	}

	public void setHospitalizedDate(Date hospitalizedDate) {
		this.hospitalizedDate = hospitalizedDate;
	}
	
	@Length(min=0, max=1, message="hospital_situation长度必须介于 0 和 1 之间")
	public String getHospitalSituation() {
		return hospitalSituation;
	}

	public void setHospitalSituation(String hospitalSituation) {
		this.hospitalSituation = hospitalSituation;
	}
	
	@Length(min=0, max=1, message="quarantine长度必须介于 0 和 1 之间")
	public String getQuarantine() {
		return quarantine;
	}

	public void setQuarantine(String quarantine) {
		this.quarantine = quarantine;
	}
	
	@Length(min=0, max=500, message="diagnosis长度必须介于 0 和 500 之间")
	public String getDiagnosis() {
		return diagnosis;
	}

	public void setDiagnosis(String diagnosis) {
		this.diagnosis = diagnosis;
	}


	public ClinicIndex getClinicIndex() {
		return clinicIndex;
	}

	public void setClinicIndex(ClinicIndex clinicIndex) {
		this.clinicIndex = clinicIndex;
	}

	public String getMarriage() {
		return marriage;
	}

	public void setMarriage(String marriage) {
		this.marriage = marriage;
	}

	public String getOccupation() {
		return occupation;
	}

	public void setOccupation(String occupation) {
		this.occupation = occupation;
	}

	public String getBedNum() {
		return bedNum;
	}

	public void setBedNum(String bedNum) {
		this.bedNum = bedNum;
	}

	public String getContactsRelation() {
		return contactsRelation;
	}

	public void setContactsRelation(String contactsRelation) {
		this.contactsRelation = contactsRelation;
	}

	public String getAcceptingMoney() {
		return acceptingMoney;
	}

	public void setAcceptingMoney(String acceptingMoney) {
		this.acceptingMoney = acceptingMoney;
	}

	public Date getAttackdate() {
		return attackdate;
	}

	public void setAttackdate(Date attackdate) {
		this.attackdate = attackdate;
	}

	public String getAttention() {
		return attention;
	}

	public void setAttention(String attention) {
		this.attention = attention;
	}

	public String getDiagnosisDesc() {
		return diagnosisDesc;
	}

	public void setDiagnosisDesc(String diagnosisDesc) {
		this.diagnosisDesc = diagnosisDesc;
	}

	public PatMasterIndex getPatMasterIndex() {
		return patMasterIndex;
	}

	public void setPatMasterIndex(PatMasterIndex patMasterIndex) {
		this.patMasterIndex = patMasterIndex;
	}

	public String getTheIllness() {
		return theIllness;
	}

	public void setTheIllness(String theIllness) {
		this.theIllness = theIllness;
	}

	public Double getPaymentAdvice() {
		return paymentAdvice;
	}

	public void setPaymentAdvice(Double paymentAdvice) {
		this.paymentAdvice = paymentAdvice;
	}

	public String getClinicNo() {
		return clinicNo;
	}

	public void setClinicNo(String clinicNo) {
		this.clinicNo = clinicNo;
	}

	public String getWardAdmissionTo() {
		return wardAdmissionTo;
	}

	public void setWardAdmissionTo(String wardAdmissionTo) {
		this.wardAdmissionTo = wardAdmissionTo;
	}

	public OrgDept getInDeptWord() {
		return inDeptWord;
	}

	public void setInDeptWord(OrgDept inDeptWord) {
		this.inDeptWord = inDeptWord;
	}

	public String getInFlag() {
		return inFlag;
	}

	public void setInFlag(String inFlag) {
		this.inFlag = inFlag;
	}
}